# -*- coding: utf-8 -*-

def relations(func):

    def wrapper(*args):
        # 元组转成列表
        newargs= list(args)
        # print(newargs)
        # print(newargs[0])
        # 遍历列表的每一个元素，第一个是self，不用处理，所以从1开始
        for i in range(1,len(newargs)):
            # newargs[0] 第一个参数是self,self.relations为关键字库里面的字典
            for key in newargs[0].relations.keys():
                # params.replace(旧值，新值)   新值替换params的旧值，若旧值不存在params中，则保持原来数据
                newargs[i] = newargs[i].replace('{' + key + '}', newargs[0].relations.get(key))
        res = func(*newargs)
        # print(*newargs)
        return  res

    return wrapper









